package com.tedu.api.thread;

/**
 * 线程常用方法：五
 * yield()   当前线程暂停
 * 作用：暂停当前执行线程对象【让当前线程对象让出CPU时间片资源】
 *      执行其他线程，但是yield，CPU时间片有时候会没有效果
 *
 *
 * 需求：门---容纳一个人进去     Door
 *      创建两个线程         student1----如果先进门---假设：“你先”---yield()
 *                         student2----后进门
 *
 *
 *
 */
public class Thread_yield {
    public static void main(String[] args) {
        //创建  门   对象
        Door door = new Door();
        //假设：我说局“你先进”
        String say = "你先进";
        //创建两个学生线程
        Thread student1=new Thread(()->{
            System.out.println("第一个人");
            door.enter();//进入教室
            //第一个同学：说句话：你先进----当前暂停
            if(say.equals("你先进")){
                Thread.yield();//静态方法：线程暂停
            }
        });
        Thread student2=new Thread(()->{
            System.out.println("第二个人");
            door.enter();//进入教室
        });
        student1.start();
        student2.start();
    }
}
    class Door{
       public void enter(){
           System.out.println("进屋上课~~~");
       }
    }

